-
Notifications
You must be signed in to change notification settings - Fork 496
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
add krew manifest for snapshot-api-objects #4227
base: master
Are you sure you want to change the base?
add krew manifest for snapshot-api-objects #4227
Conversation
🤖 Beep beep! I’m a robot speaking on behalf of @ahmetb. 🤖 Thanks for submitting your kubectl plugin to Krew! In the meanwhile, here are a few tips to make your plugin manifest better:
Thanks for your patience! |
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: oguzhan-yilmaz The full list of commands accepted by this bot can be found here.
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
Welcome @oguzhan-yilmaz! |
plugins/snapshot_api_objects.yaml
Outdated
apiVersion: krew.googlecontainertools.github.com/v1alpha2 | ||
kind: Plugin | ||
metadata: | ||
# 'name' must match the filename of the manifest. The name defines how |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's remove the boilerplate comments.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Removed with the new commit
plugins/snapshot_api_objects.yaml
Outdated
kind: Plugin | ||
metadata: | ||
# 'name' must match the filename of the manifest. The name defines how | ||
name: snapshot_api_objects |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is there a reason you picked _ over - ? It's rather not typical plugin naming.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This was an oversight, I've updated it to snapshot-api-objects
now
plugins/snapshot_api_objects.yaml
Outdated
# 'shortDescription' explains what the plugin does in only a few words | ||
shortDescription: "Snapshot Kubernetes API Objects" | ||
description: | | ||
Snapshot all Kubernetes Objects and save them as yaml files in .tar.gz archive. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does kubectl get-all plugin let us do this? If so, it might be good to not create another plugin and instead compose them.
Thanks for the insight @ahmetb. I wasn't aware of the My main goal was to have a way to snapshot API Objects to a point-in-time and then have another way to diff the snapshots to get an idea of what's changed. So I created this plugin to have the data, and was planning to create a complementary plugin for diffing two snapshots using the dyff tool. Which is a great tool with semantic diff features. I've decided to collect the two features into this plugin to make it different than My current plan is:
Would adding the diff functionality make this plugin acceptable? |
About
This plugins loops through namespaces, kubernetes api object types and gets the
-o yaml
output, pipes it tokubectl neat -
create a snapshot of the currently installed K8s API objects to filesystem.Then it creates a
.tar.gz
file with cluster name and timestamp values.Verify you can install your plugin locally: kubectl krew install --manifest=[...] --archive=[...]